package de.tabuma.soap.entity.bpel;

import de.tabuma.soap.entity.wsdl.*;
import de.tabuma.soap.entity.*;
import de.tabuma.soap.logik.*;
import java.io.*;
import java.util.*;
import java.util.ArrayList;
import javax.jdo.annotations.*;
import de.tabuma.soap.annotation.*;


/**
 * This class represents an element of an wsdl document called &quot;partnerlinktype&quot;.
 * @author $Author: alefen $
 * @version $Revision: 1.1 $
 * @since $Date: 2009/12/30 02:57:12 $
 */
@PersistenceCapable(identityType = IdentityType.APPLICATION)
@SoapClassDefinition(@SoapClassMapping(mappingString="partnerlinktype",mappingType=SoapClassMapping.MappingType.BPEL))
public class BPartnerLinkType implements Serializable {

    public BPartnerLinkType() {
        this.role = new ArrayList<Long>();
        this.tExtensibleDocumentedId = new Long(0);
    }

    @PrimaryKey
    @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
    private Long id;
    public Long getId() {
        return id;
    }
    
    @Persistent
    @SoapExtendsDefinition(extendsClass=TExtensibleDocumented.class)
    private long tExtensibleDocumentedId;
    public Long getTExtensibleDocumentedId() {
        return tExtensibleDocumentedId;
    }
    public void setTExtensibleDocumentedId(Long tExtensibleDocumentedId) {
        this.tExtensibleDocumentedId = tExtensibleDocumentedId;
    }

    @Persistent
    @SoapAttribute
    private String name;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }

    @Persistent
    @SoapFieldDefinition(@SoapFieldClass(classDefinition=BRole.class))
    private List<Long> role;
    public List<Long> getRole() {
        if(role==null) {
            role = new ArrayList<Long>();
        }
        return role;
    }
    public void setRole(List<Long> role) {
        this.role = role;
    }
}